package com.solute.utils.services;

import java.util.UUID;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.solute.domain.TagGroupVO;
import com.solute.domain.TagVO;
import com.solute.utils.services.dao.TagDao;

@Service
public class TagService {
	
	private @Autowired TagDao dao;
	
	public TagVO getByTag(String tag) {
		return dao.selectTagByTag(tag);
	}
	
	@Transactional
	public void add(String id, String tag) {
		TagVO tagVO = new TagVO();
		tagVO.setId(id);
		tagVO.setTag(tag);
		dao.insertTag(tagVO);
	}
	
	@Transactional
	public String createTagGroup(String []ids) {
		String gid = UUID.randomUUID().toString();
		TagGroupVO vo = new TagGroupVO();
		vo.setGid(gid);
		for(String id : ids) {
			vo.setTagId(id);
			dao.insertTagGroup(vo);
		}
		
		return gid;
	}
	
	@Transactional
	public void removeAll() {
		dao.deleteTagGroups();
		dao.deleteTags();
	}
}
